#pragma once

#include "gamestate.h"

class LevelMenuState : public GameState
{
private:
	int cursorx, cursory;
	int levelToLoad;

	int ActiveButtonID;
	int LockedButtonID;
	int InactiveButtonID;
	int BackButtonID;
	int HighlightedBackButtonID;
	int CursorImageID;
	int MenuFrameID;
	int BackgroundImageID;

	static LevelMenuState* pInstance;

	LevelMenuState(void);
	~LevelMenuState(void);
	LevelMenuState( const LevelMenuState& );				// copy ctor
	LevelMenuState& operator= ( const LevelMenuState& );	// assignment op
public:
	float Scale;

	static LevelMenuState* GetInstance( void );
	static void DeleteInstance( void );

	//////////////////////////////////////////////////
	// GameState Methods:
	virtual void Update(float deltaTime)	override;
	virtual void Render(void) const			override;
	virtual void Enter(void)				override;
	virtual void Exit(void)					override;
};

